package cn.school.demo

import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
import androidx.work.OneTimeWorkRequest
import androidx.work.WorkManager
import cn.school.demo.pojo.User
import cn.school.demo.repository.DataRepository
import cn.school.demo.ui.notice.NoticeWorker
import cn.school.demo.util.HttpApi
import com.blankj.utilcode.util.LogUtils
import retrofit2.Retrofit
import retrofit2.converter.gson.GsonConverterFactory
import java.util.*

class MainViewModel : ViewModel() {
    companion object {
        const val UPDATE_NOTICE = "com.broadcast.ui.notice.UPDATE_NOTICE" //更新通知的RecycleView的广播
    }

    val identity = arrayOf("请选择身份", "教职工", "学生")
    val colleges = arrayOf(
        "经济学院", "金融学院", "法学院", "人文与传播学院", "外国语学院", "数字与信息科学学院", "统计学院",
        "信息与电子工程学院", "计算机科学与技术学院", "管理科学与工程学院", "工商管理学院", "公共管理学院", "会计学院", "国际教育学院",
        "中科创业学院", "中加高等应用技术学院", "马克思主义学院", "体育教学部"
    )

    fun getNoticeList() {
        WorkManager.getInstance()
            .enqueue(OneTimeWorkRequest.Builder(NoticeWorker::class.java).build())
    }

    fun getMajor(college_name: String): Array<String> {
        return when (college_name) {
            "经济学院" -> arrayOf("经济学", "国际经济与贸易", "国际商务", "能源经济")
            "金融学院" -> arrayOf("金融学", "财政学", "投资学")
            "法学院" -> arrayOf("法学", "政治学与行政学")
            "人文与传播学院" -> arrayOf("编辑出版学", "汉语言学", "广告学")
            "外国语学院" -> arrayOf("英语", "日语", "朝鲜语", "商务英语", "翻译")
            "数字与信息科学学院" -> arrayOf("信息与计算科学", "数字与应用科学")
            "统计学院" -> arrayOf("统计学", "保险", "经济统计学", "应用统计学")
            "信息与电子工程学院" -> arrayOf("电子信息工程", "电气工程及其自动化", "电子信息科学与技术", "自动化", "电子科学与技术", "通信工程")
            "计算机科学与技术学院" -> arrayOf("计算机科学与技术", "数字媒体技术", "网络工程", "软件工程")
            "管理科学与工程学院" -> arrayOf(
                "管理科学",
                "信息管理与信息系统",
                "工程管理",
                "工业工程",
                "物业管理",
                "安全工程",
                "房地产开发与管理",
                "工程造价"
            )
            "工商管理学院" -> arrayOf("工商管理", "市场营销", "人力资源管理", "物流管理", "旅游管理", "酒店管理", "电子商务")
            "公共管理学院" -> arrayOf("劳动与社会保障", "行政管理", "劳动关系", "城市管理", "社会工作")
            "会计学院" -> arrayOf("会计学", "财务管理", "审计学", "资产评估")
            "国际教育学院" -> arrayOf("会计学", "金融学", "市场营销", "国际经济与贸易", "财务管理", "酒店管理", "人力资源管理")
            "中科创业学院" -> arrayOf("工商管理", "电子商务")
            "中加高等应用技术学院" -> arrayOf("计算机应用技术", "市场营销(国际市场营销)", "会计(国际会计)", "国际经济与贸易", "工商企业管理")
            "马克思主义学院" -> arrayOf("马克思主义学院")
            "体育教学部" -> arrayOf("体育教学部")
            else -> arrayOf("系统出错了！")
        }
    }

    fun getAge(): Array<String> {
        val time = Calendar.getInstance()
        val year = time.get(Calendar.YEAR)
        val month = time.get(Calendar.MONTH) + 1
        return when {
            (month > 9) && (month <= 12) -> arrayOf(
                "$year",
                "${year - 1}",
                "${year - 2}",
                "${year - 3}"
            )
            (month < 9) && (month >= 1) -> arrayOf(
                "${year - 1}",
                "${year - 2}",
                "${year - 3}",
                "${year - 4}"
            )
            else -> arrayOf("$year", "${year - 1}", "${year - 2}", "${year - 3}", "${year - 4}")
        }
    }

}